
پلتفرم نوتیفیکیشن Self-Hosted (مشابه نجوا) | سرور + کلاینت
- توسعه نرمافزار و آیتی
- زمان باقیمانده برای ارسال پیشنهاد
سلام برای یکی پروژههای محل کارم، دنبال پیمانکار/تیم هستم جهت پیادهسازی یک سیستم نوتیفیکیشن Self-hosted شبیه سرویسهای Web Push مثل «نجوا» با قابلیت ارسال اعلان به کاربر/گروه/همه. تمرکز اصلی روی سادگی تجربه کاربر نهایی و امکان توسعه در فازهای بعدی است. نیاز اصلی • کاربران با شماره موبایل شناسایی میشوند (OTP) • از طریق یک “Notification Center” داخلی، برای user / group / broadcast اعلان ارسال میشود • در فاز سرور، نیاز به UI ندارم (صرفاً وبسرویس + مستندات) ________________________________________ فاز ۱ (الزامی) – سرور/Backend به صورت Web Service + Docker خروجی: یک بکاند کامل داکرایز شده (ترجیحاً docker-compose) قابل اجرا روی Linux (Ubuntu/Debian) قابلیتها
- Auth• لاگین با OTP (ارسال OTP از طریق یک API خارجی؛ در ابتدا میتواند mock/test باشد)• JWT برای سشنها• API Token برای استفاده سیستمی (قابل revoke)
- User / Group• مدیریت user و group• عضویت کاربر در گروهها
- Notification Core• ارسال اعلان تکی (user)• ارسال گروهی (group)• ارسال عمومی (broadcast)• ذخیره کامل اعلانها:o Inbox سمت کاربرo لاگ/Audit سمت سیستم
- کنترلها• Rate limit• جلوگیری از اسپم/ارسال تکراری (پیشنهاد: idempotency / dedup)
- API و مستندات• REST API تمیز و مستند با Swagger/OpenAPI• نمونه curl و توضیح ورودی/خروجیها
- Deployment• Dockerfile• docker-compose (Backend + DB مثل PostgreSQL)• Healthcheck و لاگ مناسب برای عیبیابینکته مهم:فاز ۱ فقط هسته وبسرویس است و UI مدیریتی نیاز نیست.
فاز ۲ (الزامی برای ادامه کار، اما بعد از فاز ۱) – نمونه کلاینت PWA + APK (تمرکز روی Android) هدف فاز ۲ ارائه یک نمونه کلاینت ساده برای کاربر نهایی است تا “بدون تنظیمات تخصصی” بتواند وصل شود. خروجیها
- PWA / Web Client نمونه• لاگین با OTP• نمایش Inbox اعلانها + unread count• دریافت اعلان لحظهای هنگام باز بودن صفحه (WebSocket/SSE)
- Android APK نمونه (اولویت بالا)• لاگین OTP• Inbox + unread• دریافت اعلانها با تمرکز بر پایداری در اندروید (در حد نمونه قابل اتکا)• اگر Push واقعی سیستمعامل در شرایط شبکه قابل انجام نباشد، راهکار جایگزین (مثل long-polling کنترلشده / WebSocket) با مصرف باتری معقول ارائه شود• هدف: نمونه عملیاتی، نه اپ نهایی سوپر اپ
معیارهای مهم انتخاب پیمانکار • تجربه در سیستمهای realtime / notification / websocket / PWA / Android • تحویل مرحلهای داخل Git (ریپو به نام کارفرما) • مستندسازی قابل استفاده و تمیز • شفافیت در محدودیتهای Push واقعی روی موبایل/مرورگر ________________________________________ لطفاً در پیشنهادتان ارسال کنید • تکنولوژی پیشنهادی برای Backend (Node.js یا Python یا …) + دلیل انتخاب • تجربه/نمونه کار مرتبط • زمان و هزینه پیشنهادی به تفکیک فاز ۱ و فاز ۲ • رویکرد پیشنهادی برای کلاینت اندروید در شرایطی که سرویسهای گوگل/اپل در دسترس نباشند • خروجی دقیق Docker و نحوه استقرار ________________________________________ اگر قصد دارید از اوپنسورسهایی مثل ntfy/gotify استفاده کنید مشکلی نیست، اما “منطق بیزنسی” (OTP، کاربر/گروه، inbox، لاگها، API) باید مستقل و قابل توسعه باشد.
مهارتهای مورد نیاز
برنامه نویسی سی پلاس پلاس (C++)
جاوا (Java)
جاوا اسکریپت (JavaScript)
پایتون (Python)
الگوریتم
سرویسهای مرتبط
فریلنسرهایی که در این پروژه پیشنهاد ارسال کردهاند
theoktay5(1) امتیاززمان تحویل: 45 روزارسال پیشنهاد در:
afshintmp4.86(46) امتیاززمان تحویل: 30 روزارسال پیشنهاد در:- زمان تحویل: 30 روزارسال پیشنهاد در:
developedbyahura5(1) امتیاززمان تحویل: 30 روزارسال پیشنهاد در:
nadi25(1) امتیاززمان تحویل: 99 روزارسال پیشنهاد در:- زمان تحویل: 45 روزارسال پیشنهاد در:
- MAmahyarsoftware4.83(7) امتیاززمان تحویل: 45 روزارسال پیشنهاد در:
- زمان تحویل: 60 روزارسال پیشنهاد در:


